package com.ruoyi.askcase.domain;

import java.util.Date;
import java.util.HashMap;
import java.util.List;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.asktreat.domain.AskTreat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 病例管理对象 ask_case
 * 
 * @author ruoyi
 * @date 2025-02-25
 */
public class AskCase extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 病例编号 */
    private Long caseId;

    /** 病例uuid */
    @Excel(name = "病例uuid")
    private String caseUuid;

    /** 病例编号6 */
    @Excel(name = "病例编号6")
    private String caseCode6;

    /** 所属问诊人open */
    @Excel(name = "所属问诊人open")
    private String caseOpenid;

    /** 所属问诊人phone */
    @Excel(name = "所属问诊人phone")
    private String casePhone;

    /** 问诊人姓名 */
    @Excel(name = "问诊人姓名")
    private String caseUname;

    /** 问诊人年龄 */
    @Excel(name = "问诊人年龄")
    private Integer caseUage;

    /** 问诊人性别 */
    @Excel(name = "问诊人性别")
    private Integer caseUsex;

    /** 病例详情 */
    @Excel(name = "病例详情")
    private String caseText;

    /** 病例备注 */
    @Excel(name = "病例备注")
    private String caseRemark;

    /** 关联渠道 */
    @Excel(name = "关联渠道")
    private Long caseChannelid;

    /** 问诊人体模型 */
    @Excel(name = "问诊人体模型")
    private Integer caseFrontpoint;

    /** 问诊人体模型 */
    @Excel(name = "问诊人体模型")
    private Integer caseBackpoint;

    /** 治理前照片 */
    @Excel(name = "治理前照片")
    private String caseImagebefore;

    /** 治理后照片 */
    @Excel(name = "治理后照片")
    private String caseImageafter;

    private String channelName;
    private Integer channelId;
    private String channelUuid;

    public String getChannelName() {
        return channelName;
    }

    public void setChannelName(String channelName) {
        this.channelName = channelName;
    }

    public Integer getChannelId() {
        return channelId;
    }

    public void setChannelId(Integer channelId) {
        this.channelId = channelId;
    }

    public String getChannelUuid() {
        return channelUuid;
    }

    public void setChannelUuid(String channelUuid) {
        this.channelUuid = channelUuid;
    }

    public String getCaseChannelUUid() {
        return caseChannelUUid;
    }

    public void setCaseChannelUUid(String caseChannelUUid) {
        this.caseChannelUUid = caseChannelUUid;
    }

    //channeuuid 例如cm_abc12312312
    private String caseChannelUUid;  //DB没有

    public List<AskTreat> getTreatList() {
        return treatList;
    }

    public void setTreatList(List<AskTreat> treatList) {
        this.treatList = treatList;
    }

    //
    private List<AskTreat> treatList;

    public List<HashMap<String, Object>> getTreatListMap() {
        return treatListMap;
    }

    public void setTreatListMap(List<HashMap<String, Object>> treatListMap) {
        this.treatListMap = treatListMap;
    }

    private List<HashMap<String,Object>> treatListMap;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date caseCreatetime;

    /** 更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date caseUpdatetime;

    public void setCaseId(Long caseId) 
    {
        this.caseId = caseId;
    }

    public Long getCaseId() 
    {
        return caseId;
    }
    public void setCaseUuid(String caseUuid)
    {
        this.caseUuid = caseUuid;
    }

    public String getCaseUuid()
    {
        return caseUuid;
    }
    public void setCaseCode6(String caseCode6) 
    {
        this.caseCode6 = caseCode6;
    }

    public String getCaseCode6() 
    {
        return caseCode6;
    }
    public void setCaseOpenid(String caseOpenid) 
    {
        this.caseOpenid = caseOpenid;
    }

    public String getCaseOpenid() 
    {
        return caseOpenid;
    }
    public void setCasePhone(String casePhone) 
    {
        this.casePhone = casePhone;
    }

    public String getCasePhone() 
    {
        return casePhone;
    }
    public void setCaseUname(String caseUname) 
    {
        this.caseUname = caseUname;
    }

    public String getCaseUname() 
    {
        return caseUname;
    }
    public void setCaseUage(Integer caseUage) 
    {
        this.caseUage = caseUage;
    }

    public Integer getCaseUage() 
    {
        return caseUage;
    }
    public void setCaseUsex(Integer caseUsex) 
    {
        this.caseUsex = caseUsex;
    }

    public Integer getCaseUsex() 
    {
        return caseUsex;
    }
    public void setCaseText(String caseText) 
    {
        this.caseText = caseText;
    }

    public String getCaseText() 
    {
        return caseText;
    }
    public void setCaseRemark(String caseRemark) 
    {
        this.caseRemark = caseRemark;
    }

    public String getCaseRemark() 
    {
        return caseRemark;
    }
    public void setCaseChannelid(Long caseChannelid) 
    {
        this.caseChannelid = caseChannelid;
    }

    public Long getCaseChannelid() 
    {
        return caseChannelid;
    }
    public void setCaseFrontpoint(Integer caseFrontpoint) 
    {
        this.caseFrontpoint = caseFrontpoint;
    }

    public Integer getCaseFrontpoint() 
    {
        return caseFrontpoint;
    }
    public void setCaseBackpoint(Integer caseBackpoint) 
    {
        this.caseBackpoint = caseBackpoint;
    }

    public Integer getCaseBackpoint() 
    {
        return caseBackpoint;
    }
    public void setCaseImagebefore(String caseImagebefore) 
    {
        this.caseImagebefore = caseImagebefore;
    }

    public String getCaseImagebefore() 
    {
        return caseImagebefore;
    }
    public void setCaseImageafter(String caseImageafter) 
    {
        this.caseImageafter = caseImageafter;
    }

    public String getCaseImageafter() 
    {
        return caseImageafter;
    }
    public void setCaseCreatetime(Date caseCreatetime) 
    {
        this.caseCreatetime = caseCreatetime;
    }

    public Date getCaseCreatetime() 
    {
        return caseCreatetime;
    }
    public void setCaseUpdatetime(Date caseUpdatetime) 
    {
        this.caseUpdatetime = caseUpdatetime;
    }

    public Date getCaseUpdatetime() 
    {
        return caseUpdatetime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("caseId", getCaseId())
            .append("caseUuid", getCaseUuid())
            .append("caseCode6", getCaseCode6())
            .append("caseOpenid", getCaseOpenid())
            .append("casePhone", getCasePhone())
            .append("caseUname", getCaseUname())
            .append("caseUage", getCaseUage())
            .append("caseUsex", getCaseUsex())
            .append("caseText", getCaseText())
            .append("caseRemark", getCaseRemark())
            .append("caseChannelid", getCaseChannelid())
            .append("caseFrontpoint", getCaseFrontpoint())
            .append("caseBackpoint", getCaseBackpoint())
            .append("caseImagebefore", getCaseImagebefore())
            .append("caseImageafter", getCaseImageafter())
            .append("caseCreatetime", getCaseCreatetime())
            .append("caseUpdatetime", getCaseUpdatetime())
            .toString();
    }
}
